function dump(node, indent = 0) {
    //节点的类型
    const type = node.type;
    /**
     * 节点的描述，如果是根节点，则没有描述
     * 如果是element类型的节点，怎使用node.tag座位节点的描述
     * 如果是Text类型的节点，则使用node.content座位节点的描述
     *
     */
    const desc =
        node.type === "Root" ?
        "" :
        node.type === "Element" ?
        node.tag :
        node.content;
    //打印节点的类型和描述信息
    console.log(`${"_".repeat(indent)}${type}:${desc}`);
    //递归地打印子节点
    if (node.children) {
        node.children.forEach((n) => dump(n, indent + 2));
    }
}